using UnityEngine;

namespace FpFrame
{
    public enum TransitionType
    {
        Dissolve,
        Wipe,
        Blur,
        // ... add more
    }

    [CreateAssetMenu(menuName = "FpFrame/UI/TransitionSO")]
    public class TransitionSO : ScriptableObject
    {
        public TransitionType type = TransitionType.Dissolve;

        [Header("Common")]
        public float duration = 0.6f;
        public AnimationCurve ease = AnimationCurve.EaseInOut(0,0,1,1);

        [Header("Dissolve specific")]
        public Shader dissolveShader;        // ShaderGraph shader (expects _FromTex, _ToTex, _Progress)
        public Texture noiseTexture;         // e.g. for dissolve
        public float edgeWidth = 0.08f;
        public Color edgeColor = Color.white;

        // add other config fields per effect
    }
}